package com.ruoyi.demowechatpay.pojo.dto;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 发起转账DTO
 *
 * @author yansui
 * @date 2021-06-10 18:12
 */
@Data
public class WeChatTransferDTO {

    /**
     * 批次备注
     */
    @NotBlank(message = "批次备注不能为空")
    private String batchRemark;

    /**
     * 转账金额   转账金额单位为分
     */
    @NotNull(message = "转账金额不能为空")
    private Integer transferAmount;

    /**
     * appid 不传使用默认配置的
     */
    private String appId;

    /**
     * 用户在直连商户appid下的唯一标识
     */
    @NotBlank(message = "回调openid不能为空")
    private String openid;

    /**
     * 收款用户姓名  (转账大于2000元时必传)
     * 描述：
     * 1、商户转账时传入了收款用户姓名、查询时会返回收款用户姓名；
     * 2、收款方姓名采用标准RSA算法，公钥由微信侧提供
     * 3、 该字段需进行加密处理，加密方法详见敏感信息加密说明。(提醒：必须在HTTP头中上送Wechatpay-Serial)
     * 示例值：757b340b45ebef5467rter35gf464344v3542sdf4t6re4tb4f54ty45t4yyry45
     */
    @NotBlank(message = "收款用户姓名不能为空")
    private String userName;

}
